package com.lanxiao.cloud.modules.oauth.domain.service;

import com.lanxiao.cloud.modules.oauth.domain.model.Role;
import java.util.List;

/**
 * @author ：qiaoliang
 * @date ：2021-09-16
 */
public interface IRoleService {

  void saveRole(Role role, List<Long> ids);

  void updateRole(Role role, List<Long> ids);

  void deleteRole(Long id);

  /**
   *  重置角色下的权限信息
   *
   * @author ：qiaoliang
   * @param id :  角色ID
   * @param permissionIds : 权限ID
   * @date 2021-09-16 10:57
   */
  void updateRoleAndPermission(Long id, List<Long> permissionIds);

  /**
   *  重置用户下的角色信息
   *
   * @author ：qiaoliang
   * @param id :  用户ID
   * @param roleIds : 角色ID
   * @date 2021-09-16 10:57
   */
  void updateUserAndRole(Long id, List<Long> roleIds);

}
